//
//
//import com.google.gson.Gson;
//import com.google.gson.reflect.TypeToken;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.data.redis.core.RedisTemplate;
//import org.springframework.stereotype.Repository;
//
//import java.util.List;
//import java.util.concurrent.TimeUnit;
//
///*
//* 创建角色实体类的redis服务类
//* redis没有表结构概念，所以要实现mysql数据库中的表的数据在redis中存储，必须做一些转换
//* 使用json格式的文本作为redis与java普通对象相互交换数据的存储格式
//* 去除数据时将json文本数据转化为java对象
//*
//* redis  key-value来存取数据，所以在存入时要生成一个唯一的key值
//*     查询，删除，都要通过唯一的key值来进行操作
//*
//*     redis---设定时间
//*             保存在redis中的数据默认是永久存储，但是，可以指定一个实现来确定数据的生命周期
//*             ，如果超过指定时限的数据将被redis自动清除
//*
//*             RedisTemplate几种方式：
//*             redisTemplate.opsForValue();//操作字符串
//              redisTemplate.opsForHash();//操作hash
//              redisTemplate.opsForList();//操作list
//              redisTemplate.opsForSet();//操作set
//              redisTemplate.opsForZSet();//操作有序set
//* */
//@Repository
//public class SpikeRedis {
//    @Autowired
//   private RedisTemplate<String ,String> redisTemplate;
//  //redis保存单个对象
//   public void add(String key, Spike spike, Long time){
//       Gson gso=new Gson();
//         redisTemplate.opsForValue().set(key,gso.toJson(spike),time,TimeUnit.MINUTES);
//
//   }
//   //保存list集合
//   public void add(String key, List<Spike> spikes, Long time){
//       Gson gso=new Gson();
//       redisTemplate.opsForValue().set(key,gso.toJson(spikes),time,TimeUnit.MINUTES);
//   }
//   //用get获取单个对象
//   public Spike get(String key){
//       String roleGson=redisTemplate.opsForValue().get(key);
//       //将Gson字符串转化为实体对象
//       Gson gson=new Gson();
//       Spike spike=gson.fromJson(roleGson,Spike.class);
//       return spike;
//   }
//   //用get获取对象集合
//   public List<Spike> getList(String key){
//       String roleGson=redisTemplate.opsForValue().get(key);
//       //将Gson字符串转化为实体对象
//       Gson gson=new Gson();
//        List<Spike> list=gson.fromJson(roleGson,new TypeToken<List<Spike>>(){}.getType());
//       return list;
//   }
//   //根据key值进行删除
//    public void delect(String key){
//       redisTemplate.opsForValue().getOperations().delete(key);
//    }
//}
